import {createRouter, createWebHashHistory} from 'vue-router'
import Login from '../components/Login.vue'
import Home from '../components/Home.vue'

const router = createRouter({
    history:createWebHashHistory(),
    routes:[
        {
            path: '/',
            component: Login
        },
        {
            path: '/login',
            component: Login
        },
        {
            path: '/home',
            component: Home
        }
    ]
})

// 路由前置守卫，每次路由切换都会执行这个方法
// to表示往哪里去，通过to.path可以获得目的地的路径
// from表示从哪里来，通过from.path可以获得来时的路径
// next是一个方法，next()表示放行，next('/路径')表示重定向到某个页面，使用next重定向时一定要在if分支中，
// 不然只要切换进行页面切换，就会进入前置守卫执行next('/路径')方法，导致死循环
router.beforeEach((to, from, next) => {
    if(to.path == '/login'){
        next()
    } else{
        if(null != window.sessionStorage.getItem('username')){
            next()
        } else{
            console.log('haha')
            next('/login')
        }
    }
})

// 路由后置守卫，后置守卫只有to和from，没有next
router.afterEach((to, from) => {

})


export default router